データベース

SQL Server AlwaysOn は高可用性/災害復旧シナリオをサポートする優先 SQL Server 技術であり、User Workspace Manager 10.x サーバはこの技術をサポートするように最適化されています。

SQL ミラーリングは、現在、AlwaysOn 技術に移行している User Workspace Manager 10.1 FR1をご使用のお客様向けに提供されています。

SQL AlwaysOn

SQL Server AlwaysOn 可用性グループのガイダンスは以下をご覧ください。

SQL Server 可用性グループおよび災害復旧に関するホワイトページについては、次の場所をご覧ください。

マルチサブネット フェールオーバー可用性グループで SQL AlwaysOn を構成した場合、関連するリスナのデータベース接続文字列で MultiSubnetFailover 値を設定する必要があります。これは、サーバ構成ポータルまたは Powershell cmdlets を使用して行います。

データベース接続文字列の設定の詳細については、『サーバ構成ポータル スクリプト ガイド』の「新しいサーバとデータベースの設定」をご参照ください。

SQL ミラーリング

SQL データベース ミラーリングは、ミラー SQL インスタンスでデータベースのリアルタイム コピーを維持することで、データの障害回復力を保証する戦略です。フェールオーバーの場合には、このスタンバイ データベースを採用し、サービスをただちに復元できます。

元のサーバは主サーバ、スタンバイはミラーと呼ばれます。データは2つのサーバ間で自動的に同期されるため、ミラーは必要時に完全に最新の状態です。

Microsoft ベストプラクティスに従って設定する場合、SQL ミラーリングは Ivanti User Workspace Manager によってサポートされています。

自動フェールオーバーには、監視サーバが必要です。監視がない場合は、手動切り替えが必要です。
SQL ミラーリングは SQL Server 2012および2014でサポートされていますが、SQL Express エディションではサポートされていません。

User Workspace Manager サーバで SQL ミラーリングを使用する

User Workspace Manager サーバでは、ユーザがデータベース接続文字列に別のパラメータを追加できます。これを使用して、フェールオーバー パートナー パラメータを追加し、ミラー構成で、主サーバで障害が発生したか、切り替えが発生したときに、User Workspace Manager サーバが自動的に切り替わるようにすることができます。

自動フェールオーバーには、監視サーバとミラーリングされたペアが必要です。

User Workspace Manager で SQL ミラーリングを設定するには、次の手順を実行します。

User Workspace Manager サーバの初期インストール

User Workspace Manager サーバは、主データベースを参照するように最初に構成してください。データベースをインストールするために使用されるサーバ構成ポータル (SCP) は、構成セットを設定し、主データベースの詳細を含めます。

元の主サーバがミラーとして動作しているときに、SCP がインストール後に実行された場合は、SCP がフェールオーバー構成を認識しないため、データベースに接続できません。

接続エラーが発生し、データベース差異が生じます。データベースを切り替えている場合は、web.config を手動で編集し、フェールオーバー パートナーを削除する必要があります。

ミラー ペアの両方のインスタンスにサービスがアクセスできることを保証するには:

  1. サービス アカウントは Windows 認証を使用する必要があります
  2. ドメイン ユーザを使用する必要があります。

SCP の詳細については、「サーバ構成ポータル ヘルプ」をご参照ください。

主およびミラー データベースの準備

  1. 主データベースをホストするサーバで SQL Server Management Studio を実行します。
  2. オブジェクト エクスプローラで管理サーバ データベースを右クリックし、[プロパティ] を選択します。
  3. [データベース プロパティ] ダイアログで、[オプション] ページを選択します。
  4. [回復モード] ドロップダウンから、[完全] を選択します。
  5. [OK] をクリックします。
  6. 回復モードが完全に設定された後、データベースとトランザクション ログをバックアップします。
  7. 完全バックアップ、トランザクション ログの順に復元し、ミラー サーバでミラー データベースを作成します。[データベースの復元] ダイアログで、RESTORE WITH NONRECOVERY オプションが各復元で選択されていることを確認します。

データベースの復元の詳細については、SQL Server Management Studio オンライン ヘルプまたは SQL Server ドキュメントをご参照ください。

データベース ミラーリング設定

各データベースには他の SQL Server サービスのログインが必要であるため、各 SQL Server サービスをドメイン アカウントで実行することをお勧めします。

  1. 主データベースをホストするサーバで SQL Server Management Studio を実行します。
  2. オブジェクト エクスプローラでデータベースを右クリックし、[タスク] > [ミラー] を選択します。
  3. [セキュリティの構成] をクリックし、[データベース ミラーリング セキュリティの構成] ウィザードにアクセスします。
    ウィザードでは、主およびミラー サーバ インスタンスを設定します。

データベース ミラーリングを設定する方法の詳細については、SQL Server Management Studio オンライン ヘルプまたは SQL Server ドキュメントをご参照ください

管理サーバの設定

ミラーリングされたペアが設定された後、管理サーバを構成し、必要なときにフェールオーバー パートナーを使用できるようにする必要があります。これは、次の PowerShell コマンドで実行されます。

Import-ApsInstanceModule -ProductName "Management Server" -IsDefault

$pw ="Password"| ConvertTo-SecureString -AsPlainText -force

$sc = New-Object System.Management.Automation.PSCredential ("Domain\Username",$pw)

Set-ApsServerDatabase -DatabaseConnection NameOfConnection -ServiceCredential $sc -ConnectionString "Failover Partner=NameOfFailOverServer"

データベースが既定の SQL インスタンス (MSSQLServer) 内に存在する場合は、web.config.file で「Server\MSSQLServer」を指定しないでください。ミラーが動作しなくなります。既定の SQL インスタンスを使用するには、サーバ名のみを指定します。
たとえば、サーバ「SVR_2k8_01」が既定のインスタンスに存在する場合は、「SVR_2k8_01\MSSQLServer」ではなく、「SVR_2k8_01」を指定します。

フェールオーバー Powershell コマンドが正常に実行されるときには、更新されるファイルは databaseconnections.xml です。

PoSh コマンドを実行するときには、フェールオーバー接続が追加されます。

フェールオーバー接続で構成アカウント詳細情報がないときには、サーバ構成ポータルはこのように表示されます。

個人設定サーバ設定

ミラーリングを設定しても、サーバ ログインはミラーに転送されないため、サービス アカウント ログインをミラーに追加する必要があります。

  1. SQL Server Management Studio のオブジェクト エクスプローラで、[セキュリティ] > [ログイン] ノードを右クリックし、[新しいログイン] を選択します。
  2. サービス アカウント ログインの詳細を入力し、[OK] をクリックします。

ユーザの SID は既にデータベースに設定されているため、ユーザの追加のみが必要です。フェールオーバーが発生すると、ユーザはアクセスできます。

web.config ファイルの更新
  1. 個人設定サーバで web.config ファイルを開きます。通常の場所:
    C:\Program Files\AppSense\Environment Manager\Personalization Server\PS
  2. 以下の例でハイライトされたフェールオーバー パートナーを追加します。

データベースが既定の SQL インスタンス (MSSQLServer) 内に存在する場合は、web.config.file で「Server\MSSQLServer」を指定しないでください。ミラーが動作しなくなります。既定の SQL インスタンスを使用するには、サーバ名のみを指定します。
たとえば、サーバ「SVR_2k8_01」が既定のインスタンスに存在する場合は、「SVR_2k8_01\MSSQLServer」ではなく、「SVR_2k8_01」を指定します。

BackgroundService.exe.config の更新
  1. 個人設定サーバの Bin フォルダにある BackgroundService.exe.config ファイルを開きます。通常の場所:
    C:\Program Files\AppSense\Environment Manager\Personalization Server\BackgroundService
  2. 以下の例でハイライトされているようにファイルを更新します。

関連トピック